Advances in technology have allowed for increasingly complex features to be integrated into mobile terminals. Features such as video cameras, location information systems, compasses, gyroscopes, and accelerometers are capable of leveraging the communication capabilities of mobile terminals such as cellular phones, personal digital assistants (PDAs), and smartphones to provide users with unprecedented levels of information. One such way of providing information to a user is via the use of an augmented reality (AR) display. Such displays typically receive and display image data from an image capture device or a video capture device (e.g., a video camera coupled to the mobile terminal) and modify or overlay the image data to impart additional information to the user. For example, an AR display might use compass readings, an internal gyroscope, and an image of a night sky to overlay the night sky with the names of particular constellations. Another AR display might overlay a user's travel route to a destination over a view of a city street to direct the user.
One common use of augmented reality displays is to notify a user of nearby locations or other points of interest. For example, the world as viewed through an augmented reality display may annotate buildings, streets, or other locations with labels providing additional information about the annotated objects. These nearby points of interest may be identified as visible within the mobile terminal's field of view using a current location and/or facing of the mobile terminal, such as received via a compass and GPS receiver coupled to the device. However, in many environments, proximate locations may not be immediately visible to the user. For example, in an urban environment, buildings may be obscured by other buildings. As such, it is not appropriate to affix AR labels to obscured buildings, since such buildings are be visible in the display of the mobile terminal. Without a method for determining which points of interest are actually visible to the user, inaccurate, incorrect, or superfluous data may be provided to the user.